package com.ruoyi.system.domain.bo;

import com.ruoyi.common.core.domain.BaseEntity;
import com.ruoyi.common.core.validate.AddGroup;
import com.ruoyi.common.core.validate.EditGroup;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;

/**
 * 普通会员等级业务对象 p_user_level
 *
 * @author ruoyi
 * @date 2022-08-10
 */

@Data
@EqualsAndHashCode(callSuper = true)
@ApiModel("普通会员等级业务对象")
public class PUserLevelBo extends BaseEntity {

    /**
     *
     */
    @ApiModelProperty(value = "", required = true)
    @NotNull(message = "不能为空", groups = { EditGroup.class })
    private Long id;

    /**
     * 会员名称
     */
    @ApiModelProperty(value = "会员名称", required = true)
    @NotBlank(message = "会员名称不能为空", groups = { AddGroup.class, EditGroup.class })
    private String name;

    /**
     * 达到多少升级经验
     */
    @ApiModelProperty(value = "达到多少升级经验", required = true)
    private Long experience;

    /**
     * 是否显示 1=显示,0=隐藏
     */
    @ApiModelProperty(value = "是否显示 1=显示,0=隐藏", required = true)
    private Integer isShow;

    /**
     * 会员等级
     */
    @ApiModelProperty(value = "会员等级", required = true)
    @NotNull(message = "会员等级不能为空", groups = { AddGroup.class, EditGroup.class })
    private Long grade;

    /**
     * 享受折扣
     */
    @ApiModelProperty(value = "享受折扣", required = true)
    @NotNull(message = "享受折扣不能为空", groups = { AddGroup.class, EditGroup.class })
    private Integer discount;

    /**
     * 会员图标
     */
    @ApiModelProperty(value = "会员图标", required = true)
    private String icon;


}
